home *** CD-ROM | disk | FTP | other *** search
- /* @(#)charimage.h 20.14 93/06/28 SMI */
-
- /*
- * (c) Copyright 1989 Sun Microsystems, Inc. Sun design patents
- * pending in the U.S. and foreign countries. See LEGAL NOTICE
- * file for terms of the license.
- */
-
- /*
- * Definitions relating to maintenance of virtual screen image.
- */
-
- /*
- * Screen is maintained as an array of characters.
- * Screen is bottom lines and right columns.
- * Each line has length and array of characters.
- * Characters past length position are undefined.
- * Line is otherwise null terminated.
- */
- extern CHAR **image;
- extern char **screenmode;
- extern int ttysw_top, ttysw_bottom, ttysw_left, ttysw_right;
- extern int cursrow, curscol;
-
- #ifdef OW_I18N
- #define LINE_LENGTH(line) (((unsigned char)((unsigned char *)(line))[-1]))
- #define TTY_NON_WCHAR 0xffff
- #define TTY_LINE_INF_INDEX 0x7fffffff
- #else
- #define LINE_LENGTH(line) ((unsigned char)((line)[-1]))
- #endif
-
- #define MODE_CLEAR 0
- #define MODE_INVERT 1
- #define MODE_UNDERSCORE 2
- #define MODE_BOLD 4
-
- #define setlinelength(line, column) \
- { int _col = ((column)>ttysw_right)?ttysw_right:(column); \
- (line)[(_col)] = '\0'; \
- line[-1] = (unsigned char) (_col);}
-